package com.hw.one.dam2.service;

import com.hw.one.core.result.MsgResult;
import com.hw.one.dam2.entity.AQIEntity;
import com.hw.one.dam2.entity.ContrastRatioEntity;
import com.hw.one.dam2.entity.IAQIEntity;

import java.util.List;
import java.util.Map;

/**
 * 国家标准站 空气质量 servcie
 * 
 * @author admin
 *
 */
public interface IGPointAirService {
	/**
	 * 根据时间，获取国家标准站 空气质量数据
	 * @param paraMap
	 * @return
	 */
	List<AQIEntity> findAirSiteAQIByTime(Map<String, Object> paraMap) throws Exception ;

	/**
	 * 根据选定的点位编码和时间，查询国控点位的周综合指数及分指数
	 * @param paraMap
	 * @return
	 */
	List<IAQIEntity> findGPointWeekIAQIBySiteCodeAndTime(Map<String, Object> paraMap) throws Exception ;

	/**
	 * 根据选定点位编码和时间，查询并计算国控点位 同比 和 环比值。
	 * @param paraMap
	 * @return
	 */
	List<ContrastRatioEntity> findGPointContrastRatioBySiteCodeAndTime(Map<String, Object> paraMap) throws Exception;

	/**
	 * 根据点位列表，空气质量因子、时间，组合eCharts图表数据结构
	 * 包含 国控点、省控点和小型站
	 * @param paraMap
	 * @return
	 */
	MsgResult findAirQualityContrastThrend(Map<String, Object> paraMap);

	/**
	 * 根据点位编码，获取最新分钟数据
	 * @param siteCodeList
	 * @return
	 */
	List<Map<String,Object>> findGPointNewMinuteDataBySiteCode(List<String> siteCodeList);


	/**
	 * 根据点位编码，获取最新分钟数据
	 * @param siteCodeList
	 * @return
	 */
	List<Map<String,Object>> findGPointNewMinuteDataBySiteCodeList(List<String> siteCodeList);

	/**
	 * 根据点位编码，获取最新小时数据
	 * @author 李亚坤
	 * @createtime 2017年6月20日09:02:46
	 * @param siteCodeList
	 * @return
	 */
	List<Map<String, Object>> findGPointNewHourDataBySiteCodes(List<String> siteCodeList);
	/**
	 * 获取选中点位的最近12小时数据
	 * @param siteCode
	 * @return
	 */
	List<Map<String,Object>> findLast12HourGSiteHourDataBySiteCode(String siteCode);
}
